home *** CD-ROM | disk | FTP | other *** search
- <* STANDARD- *> <* MAIN- *> <* INITIALISE- *>
-
- MODULE ODStrings;
- (****************************************************************
-
- This file was created automatically by `FlexCat 1.5'
- Do NOT edit by hand!
- Oberon-A source description C 1994 by Albert Weinert
- Using with Oberon-A Interfaces for AmigaOS Release 3.1
- Modified for Oberon-A 1.5 by Frank Copeland
-
- Application: ODStrings
- Language : "english"
- Version : 1
- Description: OBERON-A:Catalogs/ODStrings.cd
-
- ****************************************************************)
-
- IMPORT
- lo := Locale, e := Exec, u := Utility, y := SYSTEM;
-
- CONST
- builtinlanguage = "english";
- version = 1;
-
- CONST
- errPrefs* = 0;
- usage* = 1;
- errArgs1* = 2;
- errArgs2* = 3;
- errIcon1* = 4;
- errIcon2* = 5;
- errMakeIcons* = 6;
- errFileName* = 7;
- errNameBuffer* = 8;
- errDupName* = 9;
- errExtLibs* = 10;
- errCorrupt* = 11;
- errForm* = 12;
- errClass* = 13;
- errParLists* = 14;
- errFieldLists* = 15;
- errBadKey* = 16;
- errGlbMod* = 17;
- errLocMod* = 18;
- errBadTag* = 19;
- errOpen* = 20;
- errType* = 21;
-
- TYPE
- AppString = RECORD;
- id : LONGINT;
- str : e.LSTRPTR;
- END;
- AppStringArray = ARRAY 22 OF AppString;
-
- VAR
- AppStrings : AppStringArray;
- catalog : lo.CatalogPtr;
-
- PROCEDURE SetStrings;
- BEGIN
- AppStrings[0].id := errPrefs; AppStrings[0].str := y.ADR( " !! Could not open preferences file '%s'\n" );
- AppStrings[1].id := usage; AppStrings[1].str := y.ADR( "See OD.doc for conditions of use\n" );
- AppStrings[2].id := errArgs1; AppStrings[2].str := y.ADR( " !! Too many arguments: select only one argument\n" );
- AppStrings[3].id := errArgs2; AppStrings[3].str := y.ADR( " !! Too few arguments: select exactly one argument\n" );
- AppStrings[4].id := errIcon1; AppStrings[4].str := y.ADR( " !! Could not create icon for '%s'\n" );
- AppStrings[5].id := errIcon2; AppStrings[5].str := y.ADR( " !! Could not obtain icon\n" );
- AppStrings[6].id := errMakeIcons; AppStrings[6].str := y.ADR( " !! Arguments MAKEICONS and NOICONS are mutually exclusive" );
- AppStrings[7].id := errFileName; AppStrings[7].str := y.ADR( " !! Could not construct file name\n" );
- AppStrings[8].id := errNameBuffer; AppStrings[8].str := y.ADR( " !! Name buffer overflow\n" );
- AppStrings[9].id := errDupName; AppStrings[9].str := y.ADR( " !! Name used twice\n" );
- AppStrings[10].id := errExtLibs; AppStrings[10].str := y.ADR( " !! Too many external libraries\n" );
- AppStrings[11].id := errCorrupt; AppStrings[11].str := y.ADR( " !! Currupt symbol file\n" );
- AppStrings[12].id := errForm; AppStrings[12].str := y.ADR( " !! Unrecognised type form\n" );
- AppStrings[13].id := errClass; AppStrings[13].str := y.ADR( " !! Unrecognised object class\n" );
- AppStrings[14].id := errParLists; AppStrings[14].str := y.ADR( " !! Too many parameter lists\n" );
- AppStrings[15].id := errFieldLists; AppStrings[15].str := y.ADR( " !! Too many field lists\n" );
- AppStrings[16].id := errBadKey; AppStrings[16].str := y.ADR( " !! Bad key for imported module\n" );
- AppStrings[17].id := errGlbMod; AppStrings[17].str := y.ADR( " !! Too many global modules\n" );
- AppStrings[18].id := errLocMod; AppStrings[18].str := y.ADR( " !! Too many local modules\n" );
- AppStrings[19].id := errBadTag; AppStrings[19].str := y.ADR( " !! Bad symbol file tag\n" );
- AppStrings[20].id := errOpen; AppStrings[20].str := y.ADR( " !! Could not open '%s'\n" );
- AppStrings[21].id := errType; AppStrings[21].str := y.ADR( " !! Unrecognised type\n" );
- END SetStrings;
-
- PROCEDURE CloseCatalog*();
- BEGIN
- IF catalog # NIL THEN lo.CloseCatalog (catalog); catalog:=NIL END;
- END CloseCatalog;
-
- PROCEDURE OpenCatalog*(loc:lo.LocalePtr; language:ARRAY OF CHAR);
- VAR Tag : ARRAY 4 OF u.TagItem;
- BEGIN
- CloseCatalog();
- IF (catalog = NIL) & (lo.base # NIL) THEN
- Tag[0].tag := lo.builtInLanguage; Tag[0].data := y.ADR( builtinlanguage );
- Tag[1].tag := u.ignore; Tag[1].data := y.ADR( language );
- Tag[2].tag := lo.version; Tag[2].data := version;
- Tag[3].tag := u.done;
-
- IF language # "" THEN
- Tag[1].tag:= lo.language;
- END;
- catalog := lo.OpenCatalogA (loc, "ODStrings.catalog", Tag);
- END;
- END OpenCatalog;
-
- PROCEDURE GetString* (num: LONGINT): e.LSTRPTR;
- VAR
- i: LONGINT;
- default: e.LSTRPTR;
- BEGIN
- i := 0; WHILE (i < 22) & (AppStrings[i].id # num) DO INC (i) END;
-
- IF i # 22 THEN
- default := AppStrings[i].str;
- ELSE
- default := NIL;
- END;
-
- IF catalog # NIL THEN
- RETURN lo.GetCatalogStr (catalog, num, default^);
- ELSE
- RETURN default;
- END;
- END GetString;
-
- BEGIN
- catalog := NIL;
- SetStrings;
- END ODStrings.
-
-